Content supplying apparatus, content supplying method, program, terminal device, and content supplying system

ABSTRACT

A content supplying apparatus, a content supplying method, a program, a terminal device, and a content supplying system capable of notifying a correspondence relation between a FLUTE stream and a segment stream to a reception side, and applicable to a system distributing a content in the FLUTE multicast manner. The content supplying apparatus includes: a FLUTE stream generating unit that generates a FLUTE stream based on a fragment stream and generates an SDP by describing information relating to an MPD in which information required for the reception side to acquire information relating to a FLUTE session distributing the FLUTE stream and the fragment stream corresponding to the FLUTE stream is described; and a multicast distribution unit that distributes the FLUTE stream and the SDP in a FLUTE multicast manner.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation of U.S. application Ser. No. 15/024,895, filedMar. 25, 2016, which is a national stage application of InternationalApplication No. PCT/JP2014/074247, filed Sep. 12, 2014, which is basedon and claims priority to Japanese Application No. 2013-202440, filedSep. 27, 2013. The above-identified documents are incorporated herein byreference in their entireties.

TECHNICAL FIELD

The present disclosure relates to a content supplying apparatus, acontent supplying method, a program, a terminal device, and a contentsupplying system, and more particularly, to a content supplyingapparatus, a content supplying method, a program, a terminal device, anda content supplying system that are appropriate for the use of a casewhere a content is distributed through File Delivery over UnidirectionalTransport (FLUTE) multicast.

BACKGROUND ART

In recent years, Over The Top Video (OTT-V) becomes the main stream ofstreaming services using the Internet, and, as a moving picturedistribution protocol, which is internationally standardized, that canbe used therefor, Moving Picture Experts Group-Dynamic AdaptiveStreaming over HTTP (MPEG-DASH; hereinafter referred to as DASH) usingan HTTP similar to that for reading a web site or the like has beenknown (for example, see Non-Patent Document 1).

In DASH, an adaptive streaming technology is realized. In other words,the content supply side is configured to prepare a plurality of streamsthat have a same content and have mutually-different bit rates accordingto a difference in the image quality, the angle of view, the size, andthe like and distribute the streams. On the other hand, the contentreception side is configured to select an optimal stream according tothe communication environments of the Internet, the decoding capacitythereof, and the like from among the plurality of streams prepared onthe supply side and receive and reproduce the selected stream.

In addition, the supply side is configured to supply a metafile called aMedia Presentation Description (MPD) to the reception side such that astream can be adaptively selected, received, and reproduced on thereception side.

In the MPD, the address (url information) of a server (supply source)supplying a stream (media data such as an audio, a video, a subtitle,and the like) of a content formed as a chunk to the reception side isdescribed. The reception side requests a stream by accessing a serverthat is a supply source of a content based on corresponding urlinformation and receives and reproduces the stream that is distributedfrom the server in an HTTP unicast manner in response to the request.

FIG. 1 illustrates an example of the configuration of a contentsupplying system that distributes a content in a steaming manner basedon DASH.

This content supplying system 10 is configured by: a plurality ofcontent supplying apparatuses 20 supplying contents; and a plurality ofDASH clients 30 receiving and reproducing contents. Each DASH client 30can be connected to the content supplying apparatuses 20 through aContents Delivery Network (CDN) 12 using the Internet 11.

The content supplying apparatus 20 distributes a plurality of streamsthat have a same content and have mutually-different bit rates. Eachcontent supplying apparatus 20 includes: a content management server 21;a DASH segment streamer 22; and a DASH MPD server 23.

The content management server 21 manages source data of a content to bedistributed to the DASH client 30, generates a plurality of pieces ofstreaming data having mutually-different bit rates based on the sourcedata, and outputs the generated streaming data to the DASH segmentstreamer 22.

The DASH segment streamer 22 generates segment streams, for example, offragmented MP4 or the like by dividing each unit of streaming data intosegments with respect to time and maintaining the generated segmentstreams as files. In addition, the DASH segment streamer 22 distributesthe maintained file of a segment stream in an HTTP unicast manner to arequest source in response to a request (HTTP request) from the DASHclient 30 as a web server. Furthermore, the DASH segment streamer 22notifies metadata including an address representing the supply source ofthe file of the segment stream to the DASH MPD server 23.

The DASH MPD server 23 generates an MPD in which an address representingthe supply source (in other words, the DASH segment streamer 22) of thefile of a segment stream. In addition, the DASH MPD server 23distributes the MPD generated in response to a request (HTTP request)from the DASH client 30 as a web server to the request source in an HTTPunicast manner.

The DASH client 30 requests the DASH MPD server 23 for an MPD andreceives the MPD that is distributed in the HTTP unicast manner inresponse thereto. In addition, the DASH client 30 requests the DASHsegment streamer 22 for the file of a segment stream based on thereceived MPD and receives and reproduces the file of the segment streamthat is distributed in the HTTP unicast manner in response thereto.

In addition, the CDN 12 includes a cache server (not illustrated in thedrawing), and the cache server caches an MPD and the file of a segmentstream distributed through the CDN 12 in the HTTP unicast manner. Then,the cache server can distribute the MPD or the segment stream that iscached to a request source in response to a request from the DASH client30 in the HTTP unicast manner in place of the DASH MPD server 23 or theDASH segment streamer 22 as a web server.

CITATION LIST Non-Patent Document

-   Non-Patent Document 1: “Realization of Non-interrupted Moving    Picture Distribution Using Existing Web Server”, Hirabayashi    Mitsuhiro, NIKKEI ELECTRONICS 2012.3.19

SUMMARY OF THE INVENTION Problems to be Solved by the Invention

As described above, in the DASH, an adaptive streaming technology usingHTTP unicast distribution is realized.

Meanwhile, in a case where the DASH client 30 can perform not only thereception of an HTTP unicast distribution but also a FLUTE multicastdistribution, for example, using a mobile communication networkrepresented by 3GPP or the like, it is desirable to perform the FLUTEmulticast distribution of the stream of a content.

In other words, since QoS (band guarantee, delay, and the like) isprotected in the FLUTE multicast distribution, in a case where a contentrequiring a real time property such as a live video is distributed,compared to the HTTP unicast distribution, the stream of a content canbe stably supplied to a plurality of reception sides simultaneously.

In addition, in a case where the DASH client 30 can receive only an HTTPunicast distribution, an operation may be considered in which a cacheserver disposed on the CDN 12 or a local network of the reception sidereceives and caches a FLUTE multicast distribution and distributes astream of a cached content to a request source in the HTTP unicastmanner in response to a request from the DASH client 30.

However, for notifying the IP address and the port number of a FLUTEsession used for distributing a stream of a content in a FLUTE multicastmanner to the reception side such as the DASH client 30 or the cacheserver, generally, a Session Media Protocol (SDP) transmitted in apresentation layer of the FLUTE is used.

On the other hand, for notifying an IP address of a web server (DASHsegment streamer 22) distributing a stream of a content in the HTTPunicast manner as described above to the reception side, an MPD is used.

In this way, in the SDP and the MPD, while information relating to asegment stream and information relating to a FLUTE stream respectivelycorresponding thereto are described, a method for describing thecorrespondence relation therebetween has not been determined. Morespecifically, for example, a correspondence relation with AdaptationSetor Representation described in the MPD cannot be described in the SDP.

The present disclosure is in consideration of such situations andenables the reception side to be notified of a correspondence relationbetween a FLUTE stream distributed in the FLUTE multicast manner and asegment stream distributed in the HTTP unicast manner.

Solutions to Problems

According to a first aspect of the present disclosure, in a contentsupplying apparatus distributing a content by using an adaptivestreaming technology, the content supplying apparatus includes: afragment stream generating unit that generates a fragment stream basedon source data of the content; an MPD generating unit that generates anMPD describing information required for a reception side to acquire thefragment stream distributed in an HTTP unicast manner; a unicastdistribution unit that distributes the MPD and the fragment stream inthe HTTP unicast manner; a FLUTE stream generating unit that generates aFLUTE stream based on the fragment stream and generates an SDP bydescribing information relating to the MPD in which information requiredfor the reception side to acquire information relating to a FLUTEsession distributing the FLUTE stream and the fragment streamcorresponding to the FLUTE stream is described; and a multicastdistribution unit that distributes the FLUTE stream and the SDP in aFLUTE multicast manner.

The FLUTE stream generating unit may describe the information relatingto the MPD in the SDP by using an attribute row defined for describingthe information relating to the MPD.

The attribute row may be “a=mpd-mapping:<mpd url><adaptation setid><representation id><base url>”.

The FLUTE stream generating unit may describe at least one of <mpd url>,<adaptation set id>, <representation id>, and <base url> that aredescription elements of the attribute row in the SDP.

The FLUTE stream generating unit may further describe a reception modein the SDP by using an attribute row defined for describing thereception mode of a case where the FLUTE session distributing the FLUTEstream is received by the reception side.

The attribute row may be “a=single-fmt:<media><encoding name><receivemode>”.

The FLUTE stream generating unit may describe one of Promiscuous,One-copy, and Keep-updated in “<receive mode>” of the attribute row asthe reception mode.

According to the first aspect of the present disclosure, in a contentsupplying method used in a content supplying apparatus distributing acontent by using an adaptive streaming technology, the content supplyingmethod includes: a fragment stream generating step of generating afragment stream based on source data of the content; an MPD generatingstep of generating an MPD describing information required for areception side to acquire the fragment stream distributed in an HTTPunicast manner; a unicast distributing step of distributing the MPD andthe fragment stream in the HTTP unicast manner; a FLUTE streamgenerating step of generating a FLUTE stream based on the fragmentstream and generates an SDP by describing information relating to theMPD in which information required for the reception side to acquireinformation relating to a FLUTE session distributing the FLUTE streamand the fragment stream corresponding to the FLUTE stream is described;and a multicast distributing step of distributing the FLUTE stream andthe SDP in a FLUTE multicast manner, the fragment stream generatingstep, the MPD generating step, the unicast distributing step, the FLUTEstream generating step, and the multicast distributing step beingperformed by the content supplying apparatus.

According to the first aspect of the present disclosure, a programcauses a computer distributing a content by using an adaptive streamingtechnology to function as: a fragment stream generating unit thatgenerates a fragment stream based on source data of the content; an MPDgenerating unit that generates an MPD describing information requiredfor a reception side to acquire the fragment stream distributed in anHTTP unicast manner; a unicast distribution unit that distributes theMPD and the fragment stream in the HTTP unicast manner; a FLUTE streamgenerating unit that generates a FLUTE stream based on the fragmentstream and generates an SDP by describing information relating to theMPD in which information required for the reception side to acquireinformation relating to a FLUTE session distributing the FLUTE streamand the fragment stream corresponding to the FLUTE stream is described;and a multicast distribution unit that distributes the FLUTE stream andthe SDP in a FLUTE multicast manner.

According to the first aspect of the present disclosure, an SDP isgenerated by describing information relating to the MPD in whichinformation required for the reception side to acquire informationrelating to a FLUTE session distributing the FLUTE stream and thefragment stream corresponding to the FLUTE stream is described, and theFLUTE stream and the SDP are distributed in a FLUTE multicast manner.

According to a second aspect of the present disclosure, in a terminaldevice that receives and reproduces a FLUTE stream that is distributedin a FLUTE multicast manner from a content supplying apparatus, thecontent supplying apparatus includes: a fragment stream generating unitthat generates a fragment stream based on source data of the content; anMPD generating unit that generates an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner; a unicast distribution unit that distributesthe MPD and the fragment stream in the HTTP unicast manner; a FLUTEstream generating unit that generates a FLUTE stream based on thefragment stream and generates an SDP by describing information relatingto the MPD in which information required for the reception side toacquire information relating to a FLUTE session distributing the FLUTEstream and the fragment stream corresponding to the FLUTE stream isdescribed; and a multicast distribution unit that distributes the FLUTEstream and the SDP in a FLUTE multicast manner, the terminal deviceacquiring the SDP distributed in the FLUTE multicast manner andreceiving the FLUTE stream distributed in the FLUTE multicast mannerbased on the acquired SDP.

In the terminal device according to the second aspect of the presentdisclosure, the MPD corresponding to the SDP may be acquired based onthe acquired SDP, and the segment stream distributed in the HTTP unicastmanner may be acquired based on the acquired MPD.

According to the second aspect of the present disclosure, the SDPdistributed in the FLUTE multicast manner is acquired, and the FLUTEstream distributed in the FLUTE multicast manner is received based onthe acquired SDP.

According to a third aspect of the present technology, in a contentsupplying system configured by a content supplying apparatus and aterminal device, the content supplying apparatus includes: a fragmentstream generating unit that generates a fragment stream based on sourcedata of the content; an MPD generating unit that generates an MPDdescribing information required for a reception side to acquire thefragment stream distributed in an HTTP unicast manner; a unicastdistribution unit that distributes the MPD and the fragment stream inthe HTTP unicast manner; a FLUTE stream generating unit that generates aFLUTE stream based on the fragment stream and generates an SDP bydescribing information relating to the MPD in which information requiredfor the reception side to acquire information relating to a FLUTEsession distributing the FLUTE stream and the fragment streamcorresponding to the FLUTE stream is described; and a multicastdistribution unit that distributes the FLUTE stream and the SDP in aFLUTE multicast manner. On the other hand, the terminal device acquiresthe SDP distributed in the FLUTE multicast manner and receives the FLUTEstream distributed in the FLUTE multicast manner based on the acquiredSDP.

According to the third aspect of the present disclosure, an SDP isgenerated by the content supplying apparatus by describing informationrelating to the MPD in which information required for the reception sideto acquire information relating to a FLUTE session distributing theFLUTE stream and the fragment stream corresponding to the FLUTE streamis described, and the FLUTE stream and the SDP are distributed in aFLUTE multicast manner. Meanwhile, the terminal device acquires the SDPdistributed in the FLUTE multicast manner and receives the FLUTE streamdistributed in the FLUTE multicast manner based on the acquired SDP.

Effects of the Invention

According to the first aspect of the present disclosure, acorrespondence relation between a FLUTE stream distributed in the FLUTEmulticast manner and a segment stream distributed in the HTTP unicastmanner can be notified to the reception side.

According to the second aspect of the present disclosure, switchingbetween a FLUTE stream distributed in the FLUTE multicast manner and asegment stream distributed in the HTTP unicast manner can be performedin a speedy manner.

According to a third aspect of the present disclosure, a correspondencerelation between a FLUTE stream distributed in the FLUTE multicastmanner and a segment stream distributed in the HTTP unicast manner canbe notified to the reception side, and the reception side can performswitching between a FLUTE stream distributed in the FLUTE multicastmanner and a segment stream distributed in the HTTP unicast manner.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram that illustrates an example of theconfiguration of a conventional content supplying system.

FIG. 2 is a diagram that illustrates an overview of a structure in whichpackets are transmitted in a FLUTE session.

FIG. 3 is a block diagram that illustrates an example of theconfiguration of a content supplying system according to the presentdisclosure.

FIG. 4 is a diagram that illustrates an example of a description of anSDP.

FIG. 5 is a diagram that illustrates a correspondence relation among anSDP, an MPD and a FLUTE session.

FIG. 6 is a flowchart that illustrates the process performed by acontent supplying apparatus.

FIG. 7 is a block diagram that illustrates an example of theconfiguration of a computer.

MODE FOR CARRYING OUT THE INVENTION

Hereinafter, a preferred embodiment (hereinafter, referred to as anembodiment) for performing the present disclosure will be described.Before that, a structure in which a packet is transmitted in a FLUTEsession and an overview of this embodiment will be described.

FIG. 2 is a diagram that illustrates an overview of a structure in whichpackets are transmitted in a FLUTE session. As illustrated in thedrawing, ALC packets are transmitted in a FLUTE session specified by aSource IP Address and a Transport Session Identifier (TSI) described inan SDP. In each ALC packet, for example, a video stream or an audiostream is stored, and, inside the FLUTE session, a unique TransportObject Identifier (TOI) is assigned thereto.

In addition, it is defined that TOI=0 is assigned to an ALC packet inwhich a File Delivery Table (FDT) is stored. A common TOI is assigned toALC packets in which the other data is stored in a case where the datasource is the same. For example, a common TOI is assigned to all the ALCpackets in which sub video streams acquired by dividing a video streamare stored. Similarly, a common TOI is assigned to all the ALC packetsin which sub audio streams acquired by dividing an audio stream arestored.

An FDT is periodically transmitted in a FLUTE session. In the FDT,attribute information relating to data stored in ALC packets of TOIsother than TOI=0 and information for reconfiguring the data aredescribed.

On a side receiving a FLUTE session, first, an FDT of TOI=0 is acquiredusing the FLUTE session, and a desired ALC packet is received byanalyzing the acquired FDT. For example, in a case where an ALC packetin which a video stream is stored is desired to be received, an FDT isacquired and analyzed, the TOI of an ALC packet in which the videostream is stored is checked, an ALC packet to which the TOI is assignedis acquired from the FLUTE session, and the ALC packet is reconfiguredand reproduced.

However, in such a case, while the FDT is acquired and analyzed, an ALCpacket in which a desired video stream is stored cannot be received, andreproduction of the desired video stream with an interrupt may occur.This is remarkable, as in case of live streaming or the like, when theretransmission number of times of the ALC packet is small or when theretransmission thereof is not performed.

Thus, in the present disclosure, in a FLUTE session, an elementarystream of a single media type is transmitted, and, before theacquisition of the FLUTE session, the reception side is notified of themedia type, the reception mode, and the like by using a Session MediaProtocol (SDP) transmitted in the presentation layer of the FLUTE.

Here, as such reception modes, three types including Promiscuous,One-copy, and Keep-updated defined in the 3GPP are assumed.

Promiscuous is a reception mode for urging the reception side to receiveall the ALC packets transmitted in a FLUTE session. Promiscuous isconsidered to be operated to be notified in a case where theretransmission number of times of ALC packets is small, for example, asin case of live streaming or the like, or the retransmission is notperformed.

One-copy is a reception mode for notifying the reception side that thepresence/absence of an update of an ALC packet does not need to bemonitored since an ALC packet that is transmitted once is nottransmitted with the content thereof being updated. In addition,Keep-updated is a reception mode for notifying the reception side thatthe presence/absence of an update of an ALC packet needs to be monitoredsince there is a case where an ALC packet that has been transmitted onceis transmitted with the content thereof being updated.

In addition, a combination of the reception modes of the three typesdescribed above, for example, Promiscuous+Keep-updated or the like maybe added to the reception modes.

According to the present disclosure, in the SDP describing informationrelating to a FLUTE multicast distribution, a correspondence relationwith an MPD describing information relating to a corresponding HTTPunicast distribution can be described.

More specifically, by introducing the following attribute row in a mediadescription section (a session description section in a case where onlya medium that is unique in the whole session defined in the SDP isdefined) of the SDP, a correspondence between the SDP and AdaptationSetor Representation of the MPD can be defined.

a=mpd-mapping:<mpd url><adaptation set id><representation id><base url>

The attribute row has mpd-mapping as its attribute type and includes<mpd url>, <adaptation set id>, <representation id>, and <base url> asits description elements.

In <mpd url>, the url of the MPD is described. In <adaptation set id>,an id attribute (AdaptationSet/@id) of the AdaptationSet is described.In <representation id>, an id attribute (Representation/@id) of theRepresentation is described. In <base url>, a url(AdaptationSet/@BaseURL or Representation/@BaseURL) corresponding toAdaptationSet or Representation is described.

Example of Configuration of Content Supplying System

FIG. 3 is a block diagram that illustrates an example of theconfiguration of a content supplying system as an embodiment accordingto the present disclosure.

The content supplying system 50 is configured by a plurality of contentsupplying apparatuses 60 and a plurality of terminal devices 80. Thecontent supplying apparatuses 60 and the terminal devices 80 can beconnected together through a network 51.

The network 51 includes not only a bi-directional communication networkrepresented by the Internet and a CDN using it but also variousbroadcast networks using a terrestrial broadcast wave, a satellitebroadcast wave, a mobile broadcast (e) MBMS, and the like.

The content supplying apparatus 60 distributes a stream of a content inthe HTTP unicast manner and the FLUTE multicast manner and includes: achannel server 61; a segmenter 62; an MPD generator 63; a FLUTE streamer64; a web server 65; and a multicast server 66.

The channel server 61 to the multicast server 66 included in the contentsupplying apparatus 60 may be arranged in an integrated manner at oneplace or may be arranged in a distributed manner through the Internet orthe like.

The channel server 61 generates a plurality of pieces of streaming datahaving mutually-different bit rates based on source data of a content tobe distributed to the terminal device 80 and outputs the generated datato the segmenter 62.

The segmenter 62 generates a segment stream, for example, of afragmented MP4 or the like by dividing each streaming data into segmentswith respect to time and outputs the generated segment stream to theFLUTE streamer 64 and the web server 65. In addition, the segmenter 62notifies metadata including an address representing the supply source ofthe segment stream to the MPD generator 63.

The MPD generator 63 generates MPD describing an address representingthe supply source (web server 65) of the file of the segment stream andthe like based on the metadata notified from the segmenter 62 andoutputs the generated MPD to the FLUTE streamer 64 and the web server65. In this MPD, an acquisition place of an SDP in which the destinationIP address of a FLUTE session of a FLUTE stream distributed in the FLUTEmulticast manner, which is switchable from the segment streamdistributed in the HTTP unicast manner, is described is described.

The FLUTE streamer 64 divides the segment stream that is sequentiallyinput from the segmenter 62 and stores the divided segment stream in ALCpackets so as to convert the segment stream into a FLUTE stream andoutputs the FLUTE stream to the multicast server 66. In addition, theFLUTE streamer 64 stores the MPD generated by the MPD generator 63 inthe ALC packet and outputs the ALC packet to the multicast server 66.Furthermore, the FLUTE streamer 64 describes an SDP relating to theFLUTE session and outputs the SDP to the multicast server 66.

The web server 65 distributes the MPD input from the MPD generator 63 inresponse to a request (HTTP request) from the terminal device 80 for theMPD to the request source in the HTTP unicast manner. In addition, theweb server 65 distributes a file of a segment stream to the requestsource in response to a request (HTTP request) from the terminal device80 for the segment stream in the HTTP unicast manner.

The multicast server 66 distributes the MPD, the SDP, and the FLUTEstream in the FLUTE multicast manner.

The terminal device 80 acquires an MPD from the content supplyingapparatus 60 through the network 51. More specifically, the terminaldevice 80 transmits an HTTP request for requesting an MPD and receivesan MPD distributed in the HTTP unicast manner or an MPD distributed inthe FLUTE multicast manner in accordance therewith. In a case where theterminal device 80 receives an MPD distributed in the FLUTE multicastmanner, announcement information in which a portal channel of themulticast server 66 performing the FLUTE multicast distribution isdescribed is referred to.

In a case where the FLUTE multicast distribution is performed throughthe mobile broadcast (e) MBMS included in the network 51, theannouncement information is known through an interaction channel or abroadcast multicast channel by using a User Service Description (USD) ofthe MBMS or the like. On the other hand, in a case where the FLUTEmulticast distribution is performed through a terrestrial broadcast waveor a satellite broadcast included in the network 51, the announcementinformation is known through an interaction channel or a broadcastmulticast channel by using an Electronic Service Guide (ESG) of DVB-H(IPDC) or the like.

In addition, the terminal device 80 transmits an HTTP request forrequesting a segment stream to the web server 65 based on the acquiredMPD and receives and reproduces a file of a segment stream that isdistributed through the HTTP multicast manner in accordance therewith.

Furthermore, the terminal device 80 acquires an SDP based on theacquired MPD and receives and reproduces a FLUTE stream that isdistributed in the FLUTE multicast manner based on the SDP. At thistime, the reception mode described in the SDP is referred to. Forexample, in a case where the reception mode is Promiscuous, all the ALCpacket transmitted in a corresponding FLUTE session are instantlyreceived.

However, since there are cases where the reception side does not have asufficient buffer capable of maintaining all the ALC packets, thereception side may be allowed to determine whether or not an operationcorresponding to the reception mode notified using the SDP is performed.

Example of Description of SDP

Next, FIG. 4 illustrates an example of the description of an SDP.

The SDP is configured by a session description section and a mediadescription section. Each of the session description section and themedia description section has a text character string of one row in theform of <Type>=<value> as its basic configuration and is configured by aplurality of rows.

<type> is designated using one alphabetical character and represents ameaning of the row on the protocol. In <value>, a character string isdescribed, and a unique format and a unique meaning are definedaccording to the corresponding type of <type>.

For example, the meaning of the alphabetical character described in<TYPE> of the session description section is as below.

-   v=(version of protocol)-   o=(transmission source and session identifier)-   s=(session name)-   i=(session information)-   a=(attribute relating to the whole session)-   t=(a time during which session is active)

The meaning of the alphabetical character described in <TYPE> of themedia description section is as below.

-   m=(media name and transmission address)-   c=(connection information—optional in the case of being included in    a session level)-   b=(band information of zero or more rows)-   a=(attribute relating to media)

According to the present disclosure, the following two kinds of theattribute type are newly defined and are introduced into the mediadescription section.

-   (1) a=single-fmt:<media><encoding name><receive mode>

This attribute row has an attribute type of single-fmt and includes<media>, <encoding name>, and <receive mode> as description elementsthereof.

In <media>, for example, video, audio, or the like is described as themedia type. In <encoding name>, as a coding system, for example, H.264,H.261, GSM (registered trademark), or the like is described. In<promiscuous>, as a reception mode, promiscuous, One-copy, orKeep-updated is described. In addition, a combination thereof such asPromiscuous+Keep-updated or the like may be added to the receptionmodes.

“a=single-fmt:video H264/9000 promiscouos” described in the exampleillustrated in FIG. 4 represents that the media type is “video”, thecoding system is H.264, the time scale is 90 KHz, and the reception modeis “promiscouos”.

In addition, “a=single-fmt:<media><encoding name><receive mode>” may beintroduced into the session description section. In such a case, thedescribed attribute type is handled as information relating to the wholeFLUTE session.

-   (2) a=mpd-mapping:<mpd url><adaptation set id><representation    id><base url>

The attribute row has “mpd-mapping” as its attribute type and includes<mpd url>, <adaptation set id>, <representation id>, and <base url> asits description elements. However, instead of describing all thedescription elements, only some thereof may be described.

In <mpd url>, the url of the MPD is described. In <adaptation set id>,an id attribute (AdaptationSet/@id) of the AdaptationSet is described.In <representation id>, an id attribute (Representation/@id) of theRepresentation is described. In <base url>, a url(AdaptationSet/@BaseURL or Representation/@BaseURL) corresponding toAdaptationSet or Representation is described.

“a=mpd-mapping: 111 222 http:/a.com/a” described in the exampleillustrated in FIG. 4 represents that AdaptationSet/@id=111,Representation/@id=222, and AdaptationSet/@BaseURL(orRepresentation/@baseURL)=http:://a.com/a.

FIG. 5 illustrates a relation among an SDP that is in a state in whichattribute rows of two kinds described above are newly added, an MPDcorresponding thereto, and a FLUTE session distributing the FLUTE stream(A/V stream).

As in the diagram, by referring to “a=single-fmt:<media><encodingname><receive mode>” of the SDP, a FLUTE session distributing the FLUTEstream can be specified. In addition, by referring to“a=mpd-mapping:<mpd url><adaptation set id><representation id><baseurl>” of the SDP, AdaptationSet and Representation of an MPDcorresponding to the FLUTE stream can be specified.

Operation of Content Supplying System 50

Next, the operation of the content supplying system 50 will bedescribed.

FIG. 5 is a flowchart that illustrates a process (hereinafter, referredto the process of the content supplying apparatus) of the contentsupplying apparatus 60 for distributing a segment stream of a content inthe HTTP unicast manner and distributing a FLUTE stream in the FLUTEmulticast manner.

In Step S1, the channel server 61 generates a plurality of pieces ofstreaming data having mutually-different bit rates based on source dataof a content to be distributed to the terminal device 80 and outputs thegenerated streaming data to the segmenter 62. In Step S2, the segmenter62 generates a segment stream of fragmented MP4 or the like based oneach streaming data and outputs the generated segment stream to theFLUTE streamer 64 and the web server 65. In addition, the segmenter 62notifies metadata including an address representing a supply source ofthe segment stream to the MPD generator 63.

In Step S3, the FLUTE streamer 64 converts the segment stream input fromthe segmenter 62 into a FLUTE stream and outputs the converted FLUTEstream to the multicast server 66. In addition, the FLUTE streamer 64stores an MPD generated by the MPD generator 63 in an ALC packet andoutputs the ALC packet to the multicast server 66. Furthermore, theFLUTE streamer 64 generates an SDP relating to a FLUTE session andoutputs the generated SDP to the multicast server 66.

In Step S4, the MPD generator 63 generates an MPD describing an addressrepresenting a supply source (web server 65) of a file of the segmentstream distributed in the HTTP unicast manner, an acquisition place ofthe SDP in which a target IP address of the FLUTE session of the FLUTEstream distributed in the FLUTE multicast manner, which is switchablefrom the segment stream, is described, and the like and outputs thegenerated MPD to the FLUTE streamer 64 and the web server 65.

In Step S5, the multicast server 66 distributes the MPD and the SDP inthe FLUTE multicast manner.

In Step S6, the web server 65, in a case where there is a request for anMPD from the terminal device 80, distributes the MPD input from the MPDgenerator 63 to the request source in the HTTP unicast manner.

When the terminal device 80 that has received the MPD issues an HTTPrequest for requesting a segment stream based on the MPD, in Step S7,the web server 65 distributes a file of the requested segment stream tothe request source in the HTTP unicast manner. The segment streamdistributed in the HTTP unicast manner is received by the terminaldevice 80 and is reproduced.

Meanwhile, the multicast server 66, in Step S8, distributes the FLUTEstream in the FLUTE multicast manner. In a case where the FLUTE streamdistributed in the FLUTE multicast manner is received by the terminaldevice 80, the terminal device 80 acquires an SDP based on the acquiredMPD, analyzes the SDP, receives a FLUTE session distributing the FLUTEstream, and initially acquires an FDT. In addition, based on the FDT,ALC packets including a desired FLUTE stream are extracted from theFLUTE session, and the FLUTE stream is reconfigured and reproduced.

When switching from the FLUTE stream distributed in the FLUTE multicastmanner to the segment stream distributed in the HTTP unicast manner isperformed, an attribute row starting with “a=mpd-mapping” of the SDP isreferred to.

In addition, when the SDP is analyzed, the reception mode described inthe SDP is referred to. More specifically, in a case where the receptionmode is Promiscuous, before the acquisition, the analysis, and the likeof the FDT, all the ALC packets transmitted in a corresponding FLUTEsession are instantly received. However, whether or not an operationcorresponding to the reception mode notified in the SDP is performed maybe determined by the reception side, and thus, the supply side does notforcibly control the operation of the terminal device 80.

As described above, according to the process of the content supplyingapparatus, the terminal device 80 can be notified of the correspondencerelation between an SDP and an MPD, in other words, the correspondencerelation between a FLUTE stream distributed in the FLUTE multicastmanner and a segment stream distributed in the HTTP unicast manner.Accordingly, switching between the FLUTE stream and the segment streamcan be performed in a speedy manner.

In addition, according to the process of the content supplyingapparatus, before the reception of a FLUTE session is started, theterminal device 80 can notify a reception mode that is appropriate forthe reception to the terminal device 80. Accordingly, it can besuppressed that missing of an ALC packet on the terminal device 80 sideand the like occur. In addition, since this notification is not acontrol process enforcing the operation of the terminal device 80 side,it can be suppressed that a situation, in which a buffer disposed on theterminal device 80 side overflows, occurs.

The content supplying apparatus 60 and the terminal device 80 performingthe series of the processes described above can be realized as acomputer executes software instead of respectively configuring themusing hardware. This computer includes a computer built in dedicatedhardware, a personal computer, for example, of a general purpose,capable of executing various functions by installing various programs,and the like.

FIG. 7 is a block diagram that illustrates an example of the hardwareconfiguration of the computer described above.

In the computer 200, a Central Processing Unit (CPU) 201, a Read OnlyMemory (ROM) 202, and a Random Access Memory (RAM) 203 areinterconnected through a bus 204.

In addition, an input/output interface 205 is connected to the bus 204.An input unit 206, an output unit 207, a storage unit 208, acommunication unit 209, and a drive 210 are connected to theinput/output interface 205.

The input unit 206 is configured by a keyboard, a mouse, a microphone,and the like. The output unit 207 is configured by a display, a speaker,and the like. The storage unit 208 is configured by a hard disk, anon-volatile memory, and the like. The communication unit 209 isconfigured by a network interface and the like. The drive 210 drives aremovable medium 211 such as a magnetic disk, an optical disc, amagneto-optical disk, or a semiconductor memory.

In the computer 200 configured as above, the CPU 201, for example, loadsa program stored in the storage unit 208 into the RAM 203 through theinput/output interface 205 and the bus 204 and executes the loadedprogram, thereby executing the series of the processes described above.

The program executed by the computer 200 (the CPU 201), for example, maybe provided with being recorded on the removable medium 211 as a packagemedium or the like. In addition, the program may be provided through awired or wireless transmission medium such as a local area network, theInternet, or digital satellite broadcast.

In the computer 200, by loading the removable medium 211 into the drive210, the program can be installed to the storage unit 208 through theinput/output interface 205. In addition, the program may be received bythe communication unit 209 through a wired or wireless transmissionmedium and be installed to the storage unit 208. Furthermore, theprogram may be installed to the ROM 202 or the storage unit 208 inadvance.

In addition, the program executed by the computer 200 may be a programthat executes the processes in a time series along the sequencedescribed in this specification or a program that executes the processesin a parallel manner or at necessary timing such as at the timing ofbeing called.

An embodiment of the present disclosure is not limited to theembodiments described above, but various changes can be made therein ina range not departing from the concept of the present disclosure.

The present disclosure may also take configurations as below.

(1)

A content supplying apparatus distributing a content by using anadaptive streaming technology, the content supplying apparatusincluding:

a fragment stream generating unit that generates a fragment stream basedon source data of the content;

an MPD generating unit that generates an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner;

a unicast distribution unit that distributes the MPD and the fragmentstream in the HTTP unicast manner;

a FLUTE stream generating unit that generates a FLUTE stream based onthe fragment stream and generates an SDP by describing informationrelating to the MPD in which information required for the reception sideto acquire information relating to a FLUTE session distributing theFLUTE stream and the fragment stream corresponding to the FLUTE streamis described; and

a multicast distribution unit that distributes the FLUTE stream and theSDP in a FLUTE multicast manner.

(2)

The content supplying apparatus according to (1), wherein the FLUTEstream generating unit describes the information relating to the MPD inthe SDP by using an attribute row defined for describing the informationrelating to the MPD.

(3)

The content supplying apparatus according to (2), wherein the attributerow is “a=mpd-mapping:<mpd url><adaptation set id><representationid><base url>”.

(4)

The content supplying apparatus according to (2) or (3), wherein theFLUTE stream generating unit describes at least one of <mpd url>,<adaptation set id>, <representation id>, and <base url> that aredescription elements of the attribute row in the SDP.

(5)

The content supplying apparatus according to any of (1) to (4), whereinthe FLUTE stream generating unit further describes a reception mode inthe SDP by using an attribute row defined for describing the receptionmode of a case where the FLUTE session distributing the FLUTE stream isreceived by the reception side.

(6)

The content supplying apparatus according to (5), wherein the attributerow is “a=single-fmt:<media><encoding name><receive mode>”.

(7)

The content supplying apparatus according to (5) or (6), wherein theFLUTE stream generating unit describes one of Promiscuous, One-copy, andKeep-updated in “<receive mode>” of the attribute row as the receptionmode.

(8)

A content supplying method used in a content supplying apparatusdistributing a content by using an adaptive streaming technology, thecontent supplying method including:

a fragment stream generating step of generating a fragment stream basedon source data of the content;

an MPD generating step of generating an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner;

a unicast distributing step of distributing the MPD and the fragmentstream in the HTTP unicast manner;

a FLUTE stream generating step of generating a FLUTE stream based on thefragment stream and generates an SDP by describing information relatingto the MPD in which information required for the reception side toacquire information relating to a FLUTE session distributing the FLUTEstream and the fragment stream corresponding to the FLUTE stream isdescribed; and

a multicast distributing step of distributing the FLUTE stream and theSDP in a FLUTE multicast manner,

the fragment stream generating step, the MPD generating step, theunicast distributing step, the FLUTE stream generating step, and themulticast distributing step being performed by the content supplyingapparatus.

(9)

A program causing a computer distributing a content by using an adaptivestreaming technology to function as:

a fragment stream generating unit that generates a fragment stream basedon source data of the content;

an MPD generating unit that generates an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner;

a unicast distribution unit that distributes the MPD and the fragmentstream in the HTTP unicast manner;

a FLUTE stream generating unit that generates a FLUTE stream based onthe fragment stream and generates an SDP by describing informationrelating to the MPD in which information required for the reception sideto acquire information relating to a FLUTE session distributing theFLUTE stream and the fragment stream corresponding to the FLUTE streamis described; and

a multicast distribution unit that distributes the FLUTE stream and theSDP in a FLUTE multicast manner.

(10)

A terminal device that receives and reproduces a FLUTE stream that isdistributed in a FLUTE multicast manner from a content supplyingapparatus, the content supplying apparatus including

a fragment stream generating unit that generates a fragment stream basedon source data of the content,

an MPD generating unit that generates an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner,

a unicast distribution unit that distributes the MPD and the fragmentstream in the HTTP unicast manner,

a FLUTE stream generating unit that generates a FLUTE stream based onthe fragment stream and generates an SDP by describing informationrelating to the MPD in which information required for the reception sideto acquire information relating to a FLUTE session distributing theFLUTE stream and the fragment stream corresponding to the FLUTE streamis described, and

a multicast distribution unit that distributes the FLUTE stream and theSDP in a FLUTE multicast manner,

the terminal device acquiring the SDP distributed in the FLUTE multicastmanner and receiving the FLUTE stream distributed in the FLUTE multicastmanner based on the acquired SDP.

(11)

The terminal device according to (10), wherein the MPD corresponding tothe SDP is acquired based on the acquired SDP, and the segment streamdistributed in the HTTP unicast manner is acquired based on the acquiredMPD.

(12)

A content supplying system configured by a content supplying apparatusand a terminal device,

the content supplying apparatus including:

a fragment stream generating unit that generates a fragment stream basedon source data of the content;

an MPD generating unit that generates an MPD describing informationrequired for a reception side to acquire the fragment stream distributedin an HTTP unicast manner;

a unicast distribution unit that distributes the MPD and the fragmentstream in the HTTP unicast manner;

a FLUTE stream generating unit that generates a FLUTE stream based onthe fragment stream and generates an SDP by describing informationrelating to the MPD in which information required for the reception sideto acquire information relating to a FLUTE session distributing theFLUTE stream and the fragment stream corresponding to the FLUTE streamis described; and

a multicast distribution unit that distributes the FLUTE stream and theSDP in a FLUTE multicast manner,

the terminal device acquiring the SDP distributed in the FLUTE multicastmanner and receiving the FLUTE stream distributed in the FLUTE multicastmanner based on the acquired SDP.

REFERENCE SIGNS LIST

-   50 Content supplying system-   51 Network-   60 Content supplying apparatus-   61 Channel server-   62 Segmenter-   63 Generator-   64 FLUTE streamer-   65 Web server-   66 Multicast server-   80 Terminal device-   200 Computer-   201 CPU

The invention claimed is:
 1. A receiving device comprising: circuitryconfigured to receive via multicast a session media protocol (SDP)describing information relating to a media presentation description(MPD), the MPD describing information required for the receiving deviceto acquire a fragment stream distributed in a Hypertext TransferProtocol (HTTP) unicast manner, the MPD being generated based on sourcedata of a content, and the SDP including information required for thereceiving device to acquire information relating to a unidirectionaltransport session distributing a unidirectional transport stream and thefragment stream corresponding to the unidirectional transport stream;and receive via multicast, based on the SDP, the unidirectionaltransport stream generated based on the fragment stream, wherein theinformation relating to the MPD includes an identification of arepresentation in the MPD for the receiving device to receive therepresentation distributed in the HTTP unicast manner.
 2. The receivingdevice according to claim 1, wherein the MPD is acquired based on thereceived SDP, and the fragment stream distributed in the HTTP unicastmanner is acquired based on the acquired MPD.
 3. The receiving deviceaccording to claim 1, wherein the SDP describes a reception modedescribing a mode for receiving the unidirectional transport stream. 4.The receiving device according to claim 3, wherein the reception mode isone of Promiscuous, One-copy, and Keep-updated.
 5. A receiving methodcomprising: receiving via multicast a session media protocol (SDP)describing information relating to a media presentation description(MPD), the MPD describing information required for a receiving device toacquire a fragment stream distributed in a Hypertext Transfer Protocol(HTTP) unicast manner, the MPD being generated based on source data of acontent, and the SDP including information required for the receivingdevice to acquire information relating to a unidirectional transportsession distributing a unidirectional transport stream and the fragmentstream corresponding to the unidirectional transport stream; andreceiving via multicast, based on the SDP, the unidirectional transportstream generated based on the fragment stream, wherein the informationrelating to the MPD includes an identification of a representation inthe MPD for the receiving device to receive the representationdistributed in the HTTP unicast manner.
 6. The receiving methodaccording to claim 5, wherein the MPD is acquired based on the receivedSDP, and the fragment stream distributed in the HTTP unicast manner isacquired based on the acquired MPD.
 7. The receiving method according toclaim 5, wherein the SDP describes a reception mode describing a modefor receiving the unidirectional transport stream.
 8. The receivingmethod according to claim 7, wherein the reception mode is one ofPromiscuous, One-copy, and Keep-updated.
 9. A non-transitory computerreadable medium including a computer program causing a computerreceiving a content by using an adaptive streaming technology to performa method comprising: receiving via multicast a session media protocol(SDP) describing information relating to a media presentationdescription (MPD), the MPD describing information required for areceiving device to acquire a fragment stream distributed in a HypertextTransfer Protocol (HTTP) unicast manner, the MPD being generated basedon source data of a content, and the SDP including information requiredfor the receiving device to acquire information relating to aunidirectional transport session distributing a unidirectional transportstream and the fragment stream corresponding to the unidirectionaltransport stream; and receiving via multicast, based on the SDP, theunidirectional transport stream generated based on the fragment stream,wherein the information relating to the MPD includes an identificationof a representation in the MPD for the receiving device to receive therepresentation distributed in the HTTP unicast manner.
 10. Thenon-transitory computer readable medium according to claim 9, whereinthe MPD is acquired based on the received SDP, and the fragment streamdistributed in the HTTP unicast manner is acquired based on the acquiredMPD.
 11. The non-transitory computer readable medium according to claim9, wherein the SDP describes a reception mode describing a mode forreceiving the unidirectional transport stream.
 12. The non-transitorycomputer readable medium according to claim 11, wherein the receptionmode is one of Promiscuous, One-copy, and Keep-updated.